#define EVENTUALLY_CORE

using System.Collections;
using System.Collections.Generic;
using LitJson;
using UnityEngine;
using System.IO;
using UnityEngine.SceneManagement;

namespace Framework
{
    public class GameManager : MonoSingleton<GameManager>
    {
        
        protected override bool flagCrossScenes => true;
        public ColorPalette palette;
        public static ColorPalette ColorPalette => Instance.palette;

        private readonly Dictionary<string, object> globalVariables = new();

        public static void SetValue(string key, object value)
        {
            Instance.globalVariables[key] = value;
        }

        public static void DeleteValue(string key)
        {
            Instance.globalVariables.Remove(key);
        }

        public static bool TryGetValue(string key, out object value)
        {
            return Instance.globalVariables.TryGetValue(key, out value);
        }

        public static void LoadScene(string sceneName)
        {
            SceneManager.LoadSceneAsync(sceneName);
        }

        public static void QuitGame()
        {
            
        }
    }
}
